www.gusucode.com > 基于matlab编程蒙特卡罗仿真设计源码程序 > 基于matlab编程蒙特卡罗仿真设计源码程序/第五讲 蒙特卡洛方法的应用/sjtdf.m

    function result=sjtdf(a,b,m,mm)
%a是积分的下限
%b是积分的上限
%m是函数的上界%积分函数cos(x)+2
%mm 是随机实验次数
frq=0;
xrandnum = unifrnd(a,b,1,mm);
yrandnum = unifrnd(0,m,1,mm);
for ii=1:mm
    if (cos(xrandnum(1,ii))+2>=yrandnum(1,ii))
        frq=frq+1;
    end    
end    
result=frq*m*(b-a)/mm